package com.wlyuan.open.scanner.dao.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.wlyuan.open.scanner.domain.address.Address;
import com.wlyuan.open.scanner.domain.customer.CustomerConfig;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;

/**
 * <p>
 *
 * </p>
 *
 * @author yuanjie
 * @since 2022-09-22
 */
@Data
@TableName("TMS_MCustomer")
@ApiModel(value = "CustomerDO对象", description = "")
public class CustomerDO implements Serializable {


    private static final long serialVersionUID = -616390398791708213L;
    @ApiModelProperty("客户属于哪个公司")
    private Long customerOwnercompany;

    @ApiModelProperty("客户的公司编号")
    private Long customerCompanyid;

    @ApiModelProperty("公司编号")
    private String customerClientcode;

    @ApiModelProperty("公司全称")
    private String customerName;

    @ApiModelProperty("所属行业")
    private Integer customerIndustry;

    @ApiModelProperty("公司网站")
    private String customerWeb;

    @ApiModelProperty("公司简称")
    private String customerShortname;

    private String customerEnname;

    private String customerShortenname;

    private String customerMaster;

    private String customerLicense;

    @ApiModelProperty("联系人")
    private String customerContact;

    @ApiModelProperty("联系电话")
    private String customerPhone;

    @ApiModelProperty("传真")
    private String customerFax;

    private String customerMail;

    private String customerAddress;

    private String customerZip;

    private String customerWeixin;

    private String customerLogo;

    private String customerBank;

    private Integer customerAutobalance;

    @ApiModelProperty("客户类型 0 线下 1 线上")
    private Integer customerUnderline;

    private String customerDescription;

    private String customerGuid;

    private Long customerUpdater;

    private String customerComments;

    private LocalDateTime customerInserttime;

    private String customerBankaccount;

    private Integer customerInvalid;

    private Integer customerHotcount;

    private LocalDateTime customerUpdatetime;

    @TableId(value = "Customer_ID", type = IdType.AUTO)
    private Long customerId;

    private Integer optStatus;

    private Long customerCreator;


    @ApiModelProperty("地址列表")
    @TableField(exist = false)
    private List<Address> addressList;

    @TableField(exist = false)
    private String raw;

    @ApiModelProperty("默认配置")
    @TableField(exist = false)
    private CustomerConfig customerConfig;
}
